php - XPath 2.0 和 LibXML2
全部标签 我有一个XML格式的Api响应。如何为这两个元素获取gps_x和gps_y。$url="http://www.tixik.com/api/nearby?lat=36.106121163930377&lng=28.07762145996093&limit=2&key=demo";$xmlinfo=simplexml_load_file($url);print_r($xmlinfo);echo$xmlinfo['gps_x'];//outputsnothingecho$xmlinfo->gps_x;//outputsnothing如何从上述响应中获取gps_x和gps_y?
我正在尝试广泛地学习xpath我需要一些实用的方法,youtube上的每个教程都建议安装firebug,mozillafirefox中的xpathcheckersaddons但不幸的是ff不支持它作为初学者请给我建议动手学习。尝试下载旧版本仍然没有可用的附加组件或插件 最佳答案 这是适用于所有浏览器的简单方法。使用控制台适用于所有浏览器您可以在浏览器控制台中使用“$x”执行任何xpath,如下所示。这是通用符号$x("xpathgoeshere"),这将返回数组,所以如果你想获得第一个匹配元素,那么你必须执行类似这样的操作$x("x
我有一个如下所示的XML:AMA*AMAZONEBAY*我想查询并找出与提供的输入匹配的所有目的地。如果我指定EBAY,我希望xpath返回节点名称=DEST3和DEST4(不关心值)但是如果我指定AMAZON,它需要返回DEST1、DEST2和DEST4,因为DEST1中的AMA*支持通配符。到目前为止,我的XPath看起来像这样:/Destination[(From=''orFrom='*'))]/@name如果指定了输入,我会动态创建XPATH表达式并将传入的值放入字段除了From之外,我的XML中还有其他元素。如果有人可以就此提出建议,我们将不胜感激。谢谢,莽卢
我最近遇到了Java的原生XMLAPI(W3CAPI)的问题,其核心是如果我尝试在我的文档中使用直接的XPath表达式,比如//bodyXPath被评估为false(不正确的行为),但是如果我用//*[1]替换它,它被评估为true(期望的行为)。我已经多次检查不同的文档,我使用的XML是有效的(我主要使用XHTML2.0和这个系统的其余部分)。由于我不知道是什么真正导致了这种情况,下面是我正在使用的各种工厂对象的一组配置选项。如您所见,我有很多与整个问题相关的各种类的自定义实现,我认为这可能与问题有关但我不确定,运行单元测试,调试器和大量的.println:s还没有帮助我。XPath
好的,我的情况是这样的:我需要将JavaScript数组的内容发送到服务器,PHP脚本将在服务器上将各个数组条目保存在MYSQL数据库中。我没有使用jQuery,但我准备将Prototype框架集成到我的项目中。我了解到可以使用Prototype提供的toJSON()方法轻松地将JS数组转换为JSON。然后我可以将其发布到我的脚本中,该脚本会以某种方式对数组进行反JSON处理并将值插入到数据库中。但我也感兴趣的不是使用JSON数据交换格式,而是将JS数组转换为XML,它可以很容易地被simplexmlPHP扩展解析(为我自己节省一些服务器端开发时间)。因此,我的问题是:我应该选择JSO
有没有办法使用PHP从[外部]xml(来自不同网站的xml文件)读取信息?我知道有一种方法可以使用JavaScript读取XML,但前提是它们都在同一个根目录中。您能否提供有关如何获取xml文件的示例,然后阅读以下内容:ExampleText1ExampleText2谢谢! 最佳答案 SimpleXML扩展提供了一个非常简单易用的工具集,可将XML转换为可以使用普通属性选择器和数组迭代器处理的对象。http://us2.php.net/manual/en/simplexml.examples-basic.php
这个问题在这里已经有了答案:Reference-HowdoIhandleNamespaces(TagsandAttributeswithaColonintheirName)inSimpleXML?(2个答案)关闭4年前。我想知道如何解析名称中似乎包含:的XML值。我一直在使用:$response=file_get_contents($url);$data=simplexml_load_string($response);然后做一个:foreach($data->itemas$key=>$current){但是,我收到的最新提要之一在提要名称中包含冒号,如下例所示:foofoo106当我
我想发送带有正确Content-typeheader的RSS/Atom提要,我可以在不访问PHP或任何其他服务器端语言的情况下执行此操作吗?目标是让浏览器将该文件视为提要,而不仅仅是普通的XML文件。 最佳答案 您可以告诉服务器发送具有特定媒体类型的特定文件。Apache有AddType和ForceType这样做的指令:#sendall.atomfileswithapplication/atom+xmlAddTypeapplication/atom+xml.atom#sendonlyfoo.barasapplication/atom
我有以下html:Bodytextdivcontent没有嵌套如何获取正文内容?我需要获取“正文”,但不知道如何执行此操作。运行结果$domhtml=DOMDocument::loadHTML($html);print$domhtml->getElementsByTagName('body')->item(0)->nodeValue;是'Bodytextdivcontent',这不是我想要得到的 最佳答案 我更喜欢DOMXPath对于这样的问题。非常灵活$domhtml=DOMDocument::loadHTML($html);$x
我正在使用phpdomdocument将数据插入到xml文件中。但是当我打开xml文件时,数据显示在一行中:swimmingjogging我如何像这样以编程方式对齐它?swimmingjogging 最佳答案 你可以使用这个功能functionpretty_xml($string){$xml=DOMDocument::loadXML($string);$xml->formatOutput=true;return$xml->saveXML();} 关于php-对齐xml文档,我们在Stac